package com.face.managesystem.service.impl;

import com.face.managesystem.mapper.ManagerMapper;
import com.face.managesystem.pojo.ManagerInfo;
import com.face.managesystem.service.ManagerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service("managerService")
public class ManagerServiceImpl implements ManagerService {

    @Autowired
    private ManagerMapper managerMapper;

    @Override
    public Boolean isUser(String userID) {
        return managerMapper.isUser(userID);
    }

    @Override
    public Boolean login(String userID, String password) {
        return managerMapper.login(userID,password);
    }

    @Transactional
    @Override
    public Boolean loginState(String userID) {
        // 当前 userID 不存在登录状态，则新增。
        if (!managerMapper.isUserState(userID)){
            managerMapper.addUserState(userID,true);
        }
        // 没登录，则进行登录。
        if (!managerMapper.loginState(userID)){
            managerMapper.updateState(userID,1);
            // 记录登录设备与其他信息。
            // ......

            // 没有登录。
            return false;
        }
        // 已经登录。
        return true;
    }

    @Override
    public ManagerInfo managerInfo(String userID) {
        return managerMapper.managerInfo(userID);
    }

}
